# Description: settings.py defines constants for each component
# Colaborators: Saulo Ricci
# Date: 2010/08/24

import os

# Some constants for crawler
CRAWLER_DIR = os.getcwd() + "/crawler"
CRAWLER_QUEUE_DIR = CRAWLER_DIR + "/queue"
CRAWLER_AUXILIARY_DIR = CRAWLER_DIR + "/aux_dir"
CRAWLER_OUTPUT_DIR = CRAWLER_DIR + "/outputs"

CRAWLER_LOG_FILENAME = CRAWLER_DIR + "/log"
CRAWLER_SEEDS_FILENAME = CRAWLER_DIR + "/seeds"
CRAWLER_LOG_OUTPUT_FILENAME = CRAWLER_DIR + "/log.output"

CRAWLER_SCRIPT = CRAWLER_DIR + "/local-crawler.sh"
CRAWLER_TYPE = "LFM_MUSIC"
CRAWLER_SLEEP_TIME = "3"
CRAWLER_NUMBER_THREADS = "4"

# Input datas dictionary for the insulation crawler
CRAWLER_INPUT_DICT = {
	'queue_dir': CRAWLER_QUEUE_DIR,
	'auxiliary_dir': CRAWLER_AUXILIARY_DIR,
	'log_filename': CRAWLER_LOG_FILENAME,
	'seeds_filename': CRAWLER_SEEDS_FILENAME,
	'crawler_type': CRAWLER_TYPE,
	'sleep_time': CRAWLER_SLEEP_TIME,
	'number_threads': CRAWLER_NUMBER_THREADS,
	'output_dir': CRAWLER_OUTPUT_DIR,
	'log_output_filename': CRAWLER_LOG_OUTPUT_FILENAME,
	'crawler_script': CRAWLER_SCRIPT
}

# Output datas dictionary for the insulation crawler
CRAWLER_OUTPUT_DICT = {
	'output_files_list': []
}

# Some constants for insulation mapper
MAPPER_DIR = os.getcwd() + "/mapper"
MAPPER_OUTPUT_DIR = MAPPER_DIR + "/outputs"
MAPPER_VOCABULARY_FILENAME = MAPPER_DIR + "/lastfm_no_stemm.words"

# Input datas dictionary for the insulation mapper
MAPPER_INPUT_DICT = {
	'xml_filename_list': [],
	'output_dir': MAPPER_OUTPUT_DIR,
	'vocabulary_filename': MAPPER_VOCABULARY_FILENAME
}

# Output datas dictionary for the insulation mapper
MAPPER_OUTPUT_DICT = {
	'output_files_list': []
}

# Some constants for insulation recommender
RECOMMENDER_DIR = os.getcwd() + "/rec"
RECOMMENDER_OUTPUT_DIR = RECOMMENDER_DIR + "/outputs"

# Input datas dictionary for the insulation recommender
RECOMMENDER_INPUT_DICT = {
	'output_dir': RECOMMENDER_OUTPUT_DIR,
	'train_filename': RECOMMENDER_DIR + "/recommender/lastfm_no_stemm",
	'test_inputtag_filename_list': [],
	'min_support': 2,
	'min_confidence': 0.5,
	'k_ant': 5,
	'k_cons': 5,
	'k_r': 1,
	'alpha': 0.85,
	'num_recommends': 5,
	'metric_number': 0,
	'confidences_status': 0,
	'confidences_filename': RECOMMENDER_DIR + "/recommender/confidences_file",
	'fs_file_status': 0,
	'fs_filename': RECOMMENDER_DIR + "/recommender/fs_file",
	'ff_filename': RECOMMENDER_DIR + "/recommender/ff_file",
}

# Output datas dictionary for the insulation recommender
RECOMMENDER_OUTPUT_DICT = {
	'output_files_list': []
}
